Proposal: canonical top-level locations field#12
Closed
paulbennun wants to merge 1 commit into
Closed
Conversation
Proposes promoting `locations` from a producer-namespaced extension (`x-nm-locations`) to a canonical top-level NCP field. Adds docs/proposals/2026-04-24-locations.md with motivation (adopter use, downstream scene-level FK, acoustic-routing background), proposed schema snippet (four fields: `id`, `name`, `description?`, `environment_hints?`), backward-compatibility notes, migration path, alternatives considered, and a reference implementation link to NCPKit. Proposal only — no changes to schema/ or examples/. Intended to open discussion before a schema-side PR. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Member
|
Paul, thank you for the great idea and the detailed proposal. The core point makes total sense: NCP should not require repeating the same place/setting details across Moments when several Moments share the same Setting. We accepted the concept using NCP terminology as story-level |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Opens discussion on promoting
locationsfrom a producer-namespaced extension (we currently carry it asx-nm-locations) to a canonical top-level NCP field. Four-field shape:id,name,description?,environment_hints?.Full proposal:
docs/proposals/2026-04-24-locations.md.This PR adds only the proposal document — it does not change
schema/orexamples/. It is intentionally left as a draft to open discussion; if the direction is agreeable, a follow-up PR would add the schema + fixtures per CONTRIBUTING.What's in the proposal
locationsarray; a working 6-location corpus; and a downstream pattern (scene-levellocation_idFKs) that benefits from a canonical home for the list.locations: []with{id, name, description?, environment_hints?}— two required, two optional.environment_hintsspecified as producer-defined free-form tags (no closed vocabulary at the canonical level).additionalProperties: falsepreserved by updating the root allow-list. Absent producers and absent consumers behave unchanged.paulbennun/NCPKithas been running this shape for about 18 months (currently serialised asx-nm-locationsunder 2.1.0).What this PR is not
schema/ncp-schema.yaml/schema/ncp-schema.jsonare untouched.x-nm-locationshappily and will continue to; this is a good-citizen proposal rather than a blocker for anything.Test plan
npm run validate:schema)